package com.chushouya.order.dto.api.partnernotify;

import com.alibaba.fastjson.annotation.JSONField;
import com.general.framework.core.lang.Dates;
import com.chushouya.order.constants.PartnerNotifyTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
@ApiModel("订单派单成功")
public class ChangeNotifyDTO extends PartnerBaseNotify{
    public ChangeNotifyDTO(){
        super.setNotifyType(PartnerNotifyTypeEnum.CHANGE.value());
        super.setNotifyName(PartnerNotifyTypeEnum.CHANGE.named());
    }

    /**
     * 订单数据
     */
    private ChangeNotifyData data;

    @Data
    @ApiModel("用户订单数据变更")
    public static class ChangeNotifyData{
        /**
         * 订单状态
         */
        @ApiModelProperty("订单状态")
        private Integer orderStatus;

        /**
         * 订单类型
         */
        @ApiModelProperty("订单类型")
        private Integer orderType;

        /**
         * 订单机型
         */
        @ApiModelProperty("订单机型")
        private String productName;

        /**
         * 用户手机号
         */
        @ApiModelProperty("用户手机号")
        private String userPhone;

        /**
         * 用户姓名
         */
        @ApiModelProperty("用户姓名")
        private String userName;

        /**
         * 地址编码
         */
        @ApiModelProperty("地址编码")
        private Long adCode;

        /**
         * 详细地址
         */
        @ApiModelProperty("详细地址")
        private String userAddress;

        /**
         * 预约上门时间-开始
         */
        @ApiModelProperty("预约上门时间-开始")
        @JSONField(format= Dates.FMT_FULL_TIME)
        private Date appointStartTime;

        /**
         * 预约上门时间-结束
         */
        @ApiModelProperty("预约上门时间-结束")
        @JSONField(format= Dates.FMT_FULL_TIME)
        private Date appointEndTime;

    }
}
